InterProcedural Alias Analiysis: Implementation and Empirical Results

نویسندگان

  • Herbert G. Mayer
  • Michael Wolfe
چکیده

We report our experiences with the implementation of InterProcedural Alias Analysis (IPA) for Fortran. Implicit aliasing caused by reference parameter passing can be uncovered in a program with multiple compilation units by interprocedural analysis. For scalar objects and for full arrays, the IPA processor described here finds all alias relations. For indexed array elements and partial arrays, conservative assumptions must still be made in the absence of precise knowledge about the subscripts. IPA has been integrated into nascent, the front-end of a Fortran translator under development at the Oregon Graduate Institute (OGI). This report explains the goals and limitations of alias analysis for conventional procedural languages with reference parameters, shows in detail the actual design and implementation of IPA, and provides algorithmic and speed improvements over the best previously known aliasing algorithms. Empirical results gathered during the analysis of large Fortran programs are also listed and discussed.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Faster Algorithms for Algebraic Path Properties in RSMs with Constant Treewidth

Interprocedural analysis is at the heart of numerous applications in programming languages, such as alias analysis, constant propagation, etc. Recursive state machines (RSMs) are standard models for interprocedural analysis. We consider a general framework with RSMs where the transitions are labeled from a semiring, and path properties are algebraic with semiring operations. RSMs with algebraic...

متن کامل

A Hierarchical Approach to Context-Sensitive Interprocedural Alias Analysis

In this paper, we present a hierarchical flow-sensitive alias analysis algorithm which parameterizes the context-sensitive level. Our approach groups the pointers in a program by their maximum possible dereference levels. It then orders the analysis of each pointer group by its pointer level, starting from the highest level down to the lowest level. During the analysis of each pointer group, a ...

متن کامل

Eecient Flow-sensitive Interprocedural Computation of Pointer-induced Aliases and Side Eeects

We present practical approximation methods for computing interprocedural aliases and side eeects for a program written in a language that includes pointers, reference parameters and recursion. We present the following results: 1) An algorithm for ow-sensitive interprocedural alias analysis which is more precise and eecient than the best inter-procedural method known. 2) An extension of traditio...

متن کامل

Eecient Points-to Analysis for Whole-program Analysis

To function on programs written in languages such as C that make extensive use of pointers, automated software engineering tools require safe alias information. Existing alias-analysis techniques that are suuciently eecient for analysis on large software systems may provide alias information that is too imprecise for tools that use it: the impreci-sion of the alias information may (1) reduce th...

متن کامل

Flow-Insensitive Interprocedural Alias Analysis in the Presence of Pointers

Data-ow analysis algorithms can be classiied into two categories: ow-sensitive and ow-insensitive. To improve eeciency, ow-insensitive interprocedural analyses do not make use of the intrapro-cedural control ow information associated with individual procedures. Since pointer-induced aliases can change within a procedure, applying known ow-insensitive analyses can result in either incorrect or o...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:
  • Softw., Pract. Exper.

دوره 23  شماره 

صفحات  -

تاریخ انتشار 1993